package controllers;

import java.util.Vector;

import javax.swing.table.AbstractTableModel;

import models.Dia_Semana;
import models.Paciente;

public class MyPacientesTableModel extends AbstractTableModel {
	private String [] columnNames = {"Nombre","Apellido","Dni", "Obra social", "Cancelaciones"};
    private Vector<Paciente> pacientes;
    
	public MyPacientesTableModel(Vector<Paciente> pacientes) {
		this.pacientes = pacientes;
	}

	@Override
	public int getColumnCount() {
		 return columnNames.length;
		
	}
	@Override
    public String getColumnName(int col){
		return columnNames[col];
	}

	@Override
	public int getRowCount() {
		 return this.pacientes.size();

	}

	public Paciente getPacienteAt(int row) {
		return pacientes.get(row);
	}
	
	public void removePacienteAt(int row){
           pacientes.remove(row);
           fireTableDataChanged();
   }

	@Override
    public Object getValueAt(int row, int col) {
		Paciente paciente = pacientes.get(row);
        switch (col) {
        case 0:
        		return paciente.getNombre();
        case 1:
        		return paciente.getApellido();
        case 2:
             	return paciente.getDni();
        case 3:
        		return paciente.getObraSocial().getSigla();
        case 4: 
        		return paciente.getCancelaciones();
        default:
                return null;
        }
	}
	
}